A data processing environment comprises a variety of hardware, software, and firmware components. A physical network, also called a data plane or an underlay, is a network of physical components where actual networking operations are performed and computational workloads are executed.
Techniques are available presently to construct a logical network, also known as a software defined network (SDN) overlay (hereinafter interchangeably, “SDN” or “overlay”), from the components of an underlay. Essentially, networking components and data processing components are abstracted into corresponding logical or virtual representations, and the abstractions are used to define the SDN. In other words, an SDN is a logical network formed and operated using logical representations of the underlying physical components.
Once the virtualization of compute and storage elements is achieved by SDNs, larger and more complex infrastructures can be built using the underlying virtualized elements. Such infrastructure built in code using elements of SDN combined with large-scale compute and storage functions, such as cloud computing infrastructure, is referred to as a Software Defined Infrastructure (SDI).
In SDI, a workload's configuration is described in terms of functional and non-functional requirements in code. The code description of the workload or workload's configuration resolves into physical and/or virtual resources from whatever type of underlying network might be in use. For example, a configuration change in code in an SDI may cause a virtual server to be configured in the underlying SDN. The provisioning of the underlying resources is abstracted to code in the SDI in this manner.
Software Defined Environment (SDE) refers to operational automation using the SDI or SDN elements as code components. Automated installation and configuration of software and compute or storage resources is a fundamental feature of SDE. As it exists today, SDE features further include cross-domain integration, orchestration and coordination. Cross-domain integration means that deployments are more than just instantiations of Virtual machines (VM, plural VMs). Owing to the SDI underlying the SDE, deployment of a workload in an SDE is encoded as the collection of VMs that makes up the workload. This deployment can include domains like load balancers, application servers as well as database nodes and many other elements all forming a single workload deployment unit. Deploying collections of servers also requires some level of orchestration in order to configure and deploy not just a single VM instance, but many. Also, some of the information needed to complete the orchestration are not known until the workload is being deployed. IP addresses, user credentials as well as other security information such as certificates are generally installed as part of the deployment process. In an SDE, all of these activities are orchestrated, in many instances across VMs.
The various components in an SDI are configured using code. A ‘configuration’ as used herein refers to code that represents a component in an SDI. Accordingly, the various components in the SDI are managed, modified, and manipulated by performing configuration changes, i.e., code changes.
This code manifestation of SDI components allows automated configuration management systems to manage and operate various components in a given SDI. A configuration management system (CMS) uses a CMS-specific programming language which mimics a conventional higher-level programming language, such as an object oriented programming language or an interpreted programming language. Using such a language, a CMS allows automated methods to create, manage, or modify software-defined components in an SDI. When a change is to be made to a component in the SDI, the CMS facilitates the manipulation of a configuration and deploys a new or modified configuration in the SDI to effectuate the change in the SDI.
A monitoring system (MS) is a tool that monitors or observes the operations and performance of a collection of systems in a data processing environment. An MS can be used with a physical data processing environment or an SDI. When operating with an SDI, the MS observes the operations of the various SDI components, collects performance metrics, detects alarms and events, provides notifications to administration personnel.